云服务器生产部署实操:RAG与文档站
17-04把生产部署的决策链讲清了(查询向量躲不掉、CPU推理选型、配置估算),这节把它走完:买一台轻量云服务器,把整套RAG基础设施——embedding推理服务、docs向量库、dev-server文档站——部署到公网,从SSH免密到防火墙放行再到在线验收。部署过程的主要执行者是AI:人给服务器凭证和文档,AI跑完全程。
为什么Vercel装不下这套服务
14-02/14-03把文档站发过GitHub Pages、mock服务发过Vercel/Cloudflare,为什么这次不行?三件事对不上:
| 需求 | 静态托管/Vercel | 本项目 |
|---|---|---|
| 页面形态 | 适配静态HTML | 有数据库(LibSQL文件,常驻进程读写) |
| 持久存储 | Vercel可跑常驻进程但不提供存储 | dev-server.db / docs-vector.db / auth.db |
| embedding推理 | 无 | 查询向量必须现场算(17-04的死结) |
替代路线是买一个embedding API(OpenAI或国内云厂商的embedding端点,价格不贵,17-04有账)——查询侧走API、向量库随静态制品走,也能跑通。但既然要学"自己部署嵌入模型与对应服务",就需要一台服务器。关键判断:embedding模型不大,CPU服务器就够——不用GPU,各家云厂商的轻量应用服务器即可满足。
选型调研与配置估算
部署前先用/local-search(5-02建的那个skill)做了一轮调研,要点:
- 向量库:项目用的LibSQLVector——轻量、单机适配好,随db文件整体搬迁即可(17-04"备份=拷文件"的结论在这里兑现)
- CPU推理引擎(无需GPU即可推理):TEI(HuggingFace官方)与infinity——业界和公司内部用得多的两个,都是容器化运行、一条docker命令即起;给客户做演示、模型数量少,Ollama就够;一台服务器部署多模型且要高吞吐,才需要Xinference、vLLM这类多模型平台
- 配置估算:2核CPU、8-10GB磁盘、4GB内存——与17-04的估算表一致(推荐2C4G档)
买服务器:轻量云两家价格实测
轻量应用服务器是各云厂商面向个人开发者的入门产品线,够用且便宜。录制时的实测价与2026-10检索价对比(促销价随时间波动,下单前自行核对):
| 厂商 | 规格 | 录制实测 | 2026-10检索 |
|---|---|---|---|
| 腾讯云轻量 | 2C2G | ¥99/年(大促) | 新用户秒杀低至¥38/年 |
| 腾讯云轻量 | 2C4G | ¥188/年 / ¥65/月 | 以活动页为准 |
| 阿里云轻量 | 2C4G·200M峰值带宽 | ¥29/月 | 新用户¥9.9/月、¥199/年 |
三个购买要点:
- 镜像选系统镜像 Ubuntu 24.04 LTS——云厂商控制台都预置
- 觉得买一年太长就按月买(最短一个月),或按量付费练手
- 看清流量计费口径:阿里云轻量标"无固定流量"的套餐,流量费已含在套餐内不另计(官方计费文档口径);固定流量额度的套餐超出后才按量另算。另外大促节点(618/双11)价格明显更低,不急可以等
两家怎么选:谁便宜选谁,功能上这点场景没有差异。购买后在控制台拿到公网IP,设置好连接密码(阿里云路径类似)。
SSH免密与安全加固:一句提示词
有了IP和密码,接下来全是AI的活。固有的提示词模板:
我有一台云服务器,IP是 <公网IP>,登录账号是 root,密码是 <密码>。
请帮我配置本地的SSH免密登录,并加强服务器的安全性。
text
AI会生成密钥对、把公钥写进服务器的authorized_keys、在本地~/.ssh/config里配一个别名,顺手做基础加固。之后ssh <别名>一行直连。录制时的实测状态:这台2C4G的机器上已经跑着多个演示服务,内存占用仅10%出头——侧面印证17-04"embedding负载是短脉冲"的判断。
全自动部署:把17-04的文档拖给AI
这是本节最值得看的过程。人只做两件事:把课件里《向量检索落地》的文档拖进对话,发一句"按照这个文档,在服务器上部署embedding服务,并把本地的向量数据库上传上去"。AI先探测、再规划、再执行,全程bash自动跑,不需要干预:
- 探测服务器环境(系统版本、docker有无、端口占用)
- 部署CPU embedding服务(文档里推荐的是TEI)
- 本地生成docs向量库的db文件(
pnpm index:docs那套管线) - 上传db到服务器并闭环验证
原来部署一个服务要先懂Linux常用命令、环境配置、包管理器,现在这些运维基础操作AI全部代劳——联网环境下,基础运维正在被AI替代。内网/无网环境它替代不了,但内网可以装Ollama跑千问做本地AI服务,接Claude Code/Codex这类工具;纯本地轻量场景其实用pi这类极简agent更合适,不必上重型工具。
AI的临场决策:Ollama而不是TEI
部署结果与文档建议有一处出入,而且出得有道理:AI没有照抄"TEI优先",而是先检查向量库现状——本地索引是Ollama的bge-m3建的。它给出的判断:TEI CPU方案对2C2G设备更推荐,但意味着模型搭配不同、需要本地重建索引、内存占用也要重估;当前服务器上Ollama已经跑稳(docker ps可见,11434端口),于是不切换、直接用Ollama,并把决策理由记回笔记。
这正是17-04"同模型原则"在实操中的自然生效:引擎可以换,模型不能悄悄换——先查向量库是哪个模型建的,再定推理引擎。(发现只部署了Ollama还没部署业务服务时,补一句"把我们的服务部署到服务器并映射端口"即可。)
云平台防火墙与HTTPS
部署完成后访问不通,九成是云平台防火墙——这是与本地开发最大的环境差异:
- 云服务器控制台有独立的防火墙规则,不添加放行规则,端口在服务器上监听了也访问不到
- 演示环境图省事放行了6000-40000一大段;生产环境应该只放行实际需要的高位端口(服务演示选高位端口号是好习惯)
- 后续绑域名用acme.sh申请HTTPS证书,全站开启安全访问——这是个人项目做HTTPS的事实标准路径
在线验收与公网形态
浏览器打开http://<公网IP>:<端口>逐项过一遍:
- playground与组件指南页正常加载
- 向量检索演示:关键词/混合双路对比可查询,结果带相似度评分
- 向量库浏览:473个块分页可见(部署的就是本地生成的那份db)
- mock演示、多agent workflow演示全部可跑
公网部署还有一条安全底线(仓库.env.example写明的部署模式):服务端零LLM key——MASTRA_MODEL系列全部注释掉,防匿名访客烧自己的key;访客要真实模型时,在Playground顶栏⚙(ProviderSettingsDialog)注册自己的url+key(POST /api/providers运行时注册),选dev server与对应agent即可对话。mock演示与语义检索(EMBEDDING_MODEL走本地Ollama)不依赖任何外部key,公网开箱即用。
整条部署链路收个总:
小结
- 为什么上服务器:静态托管无存储、无embedding推理;替代路线是买embedding API,但自部署模型需要CPU服务器——轻量云即可
- 推理引擎分档:演示用Ollama、专业embedding服务TEI/infinity、多模型高吞吐Xinference/vLLM;2C4G+8-10GB盘的估算与17-04一致
- 价格:轻量云2C4G在¥9.9-65/月、¥99-199/年区间(2026-10活动价),谁便宜选谁;Ubuntu 24.04 LTS;看清流量计费口径
- AI代劳的全流程:SSH免密与加固一句提示词;部署四步(探测→embedding服务→本地建库→上传验证)全自动;Linux运维基础操作在联网环境正被AI替代,内网是例外
- 临场决策:AI按同模型原则选了Ollama而非TEI——引擎可换、模型不能换,决策记回笔记
- 云上两道门:控制台防火墙放行(不通的九成原因)+ acme.sh上HTTPS;公网形态零key,访客自带Provider
↑